home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1996 March / EnigmA AMIGA RUN 05 (1996)(G.R. Edizioni)(IT)[!][issue 1996-03][Skylink CD IV].iso / earcd / program / mui32dev.lha / MUI / Developer / Modula / txt / MuiSupport.mod < prev   
Text File  |  1995-12-15  |  2KB  |  111 lines

  1. IMPLEMENTATION MODULE MuiSupport;
  2.  
  3. (*$ NilChk      := FALSE *)
  4. (*$ EntryClear  := FALSE *)
  5. (*$ LargeVars   := FALSE *)
  6. (*$ StackParms  := FALSE *)
  7.  
  8. (*$ DEFINE Locale:=FALSE *)
  9.  
  10. (* MuiSupport 2.0
  11. ** converted by C.Scholz
  12. **
  13. ** HISTORY :
  14. **
  15. ** 22.10.1993 : changed fail, it now does not use Terminal anymore.
  16. **              Instead it uses Arts.Requester
  17. **              (inspired by Michael Suelman)
  18. **
  19. **/// "$Log: MuiSupport.mod $
  20.  * Revision 1.2  1995/12/15  16:37:53  olf
  21.  * - applied changes from Stefan Schulz
  22.  * - cleanup of IMPORT section
  23.  *"
  24. # Revision 1.1  1995/09/25  15:32:52  olf
  25. # Initial revision
  26. #
  27. # Revision 1.6  1994/08/16  20:33:19  Kochtopf
  28. # fail bei +LOCALE berichtigt, so dass der String nicht auf 0C, sondern
  29. # auf NIL getestet wird.
  30. #
  31. # Revision 1.5  1994/08/11  17:00:11  Kochtopf
  32. # *** empty log message ***
  33. #
  34. # Revision 1.4  1994/02/09  14:50:03  Kochtopf
  35. # Versionsnummer in 2.0 geaendert.
  36. #
  37. # Revision 1.3  1994/02/02  09:37:18  Kochtopf
  38. # app bei fail in VAR-Parameter geaendert.
  39. #
  40. # Revision 1.2  1994/02/01  16:49:10  Kochtopf
  41. # kleine Veraenderungen.
  42. #
  43. **\\\
  44. **
  45. *)
  46.  
  47. FROM SYSTEM     IMPORT  ASSEMBLE, ADDRESS, ADR;
  48. FROM Arts       IMPORT  StrPtr, returnVal, Exit, Requester;
  49. FROM MuiD       IMPORT  APTR ;
  50.  
  51. IMPORT
  52.   ml : MuiL,
  53.   R ;
  54.  
  55. PROCEDURE DoMethod(obj{R.A2} : APTR; msg{R.A1} : APTR);
  56. (*$ EntryExitCode:=FALSE *)
  57.  
  58. BEGIN
  59.  
  60.     ASSEMBLE (  MOVEA.L -4(A2),  A0
  61.                 MOVE.L   8(A0),-(A7)
  62.                 RTS
  63.                 END );
  64.  
  65. END DoMethod;
  66.  
  67. PROCEDURE DOMethod(obj{R.A2} : APTR; msg{R.A1} : APTR) : LONGINT;
  68. (*$ EntryExitCode:=FALSE *)
  69.  
  70. BEGIN
  71.  
  72.     ASSEMBLE (  MOVEA.L -4(A2),  A0
  73.                 MOVE.L   8(A0),-(A7)
  74.                 RTS
  75.                 END );
  76.  
  77. END DOMethod;
  78.  
  79.  
  80.  
  81. (*****************)
  82. (* Fail Function *)
  83. (*****************)
  84.  
  85. (*$ IF Locale *)
  86. PROCEDURE fail(VAR app : APTR; str : StrPtr);
  87. (*$ ELSE *) (*$ CopyDyn := FALSE *)
  88. PROCEDURE fail(VAR app : APTR; str : ARRAY OF CHAR);
  89. (*$ ENDIF *)
  90.  
  91.     VAR
  92.         Result     : BOOLEAN;
  93.  
  94.     BEGIN
  95.         IF app#NIL THEN ml.mDisposeObject(app); app:=NIL; END;
  96.  
  97.                 (*$ IF Locale *)
  98.         IF str # NIL THEN
  99.                     Result:=Requester(ADR("MUI-Request"),str,NIL,ADR("Oh..."));
  100.                 (*$ ELSE *)
  101.         IF str[0]#0C THEN
  102.                     Result:=Requester(ADR("MUI-Request"),ADR(str),NIL,ADR("Oh..."));
  103.                 (*$ ENDIF *)
  104.                 Exit(20);
  105.            ELSE
  106.                 Exit(0);
  107.            END;
  108.     END fail;
  109.  
  110. END MuiSupport.
  111.